The present invention relates to program viewing units such as set top boxes used in entertainment systems. More specifically, the present invention relates to a method and apparatus for scrambling program data such that the program data may be de-scrambled for viewing at a future time without experiencing the problems associated with key expiration.
Analog communication systems are rapidly giving way to their digital counterparts. Digital television is currently scheduled to be available nationally to all consumers by the year 2002 and completely in place by the year 2006. High-definition television (HDTV) broadcasts have already begun in most major cities on a limited basis. Similarly, the explosive growth of the Internet and the World Wide Web have resulted in a correlative growth in the increase of downloadable audio-visual files, such as MP3-formatted audio files, as well as other content.
Simultaneously with, and in part due to, this rapid move to digital communications system, there have been significant advances in digital recording devices. Digital versatile disk (DVD) recorders, digital VHS video cassette recorders (D-VHS VCR), CD-ROM recorders (e.g., CD-R and CD-RW), MP3 recording devices, and hard disk-based recording units are but merely representative of the digital recording devices that are capable of producing high quality recordings and copies thereof, without the generational degradation (i.e., increased degradation between successive copies) known in the analog counterparts. The combination of movement towards digital communication systems and digital recording devices poses a concern to content providers such as the motion picture and music industries, who desire to prevent the unauthorized and uncontrolled copying of copyrighted, or otherwise protected, material.
In response, there is a movement to require service providers, such as terrestrial broadcast, cable and direct broadcast satellite (DBS) companies, and companies having Internet sites which provide downloadable content, to introduce protection schemes. Two such copy protection systems have been proposed by the 5C group of the Data Hiding Sub Group (DHSG) (5C comprising representatives of Sony, Hitachi, Toshiba, Matsushita, and Intel) and the Data Transmission Discussion Group (DTDG), which are industry committee subgroups of the Copy Protection Technical Working Group (CPTWG). The CPTWG represents the content providers, computer and consumer electronic product manufacturers.
The DTDG Digital Transmission Copy Protection (DTCP) proposal is targeted for protecting copy-protected digital content, which is transferred between digital devices connected via a digital transmission medium such as an IEEE 1394 serial bus. Device-based, the proposal uses symmetric key cryptographic techniques to encode components of a compliant device. This allows for the authentication of any digital device prior to the transmission of the digital content in order to determine whether the device is compliant. The digital content is itself encoded prior to transmission so that unauthorized copying of the content will result in copy having an unintelligible format.
One method of encoding the content has been proposed by the DHSG, and is based on watermarking techniques. Although the main focus of the DHSG proposal has been for copy protection of digital movie and video content, particularly as applied to DVD systems, it is expected to be applicable to the copy protection of any digital content distributed electronically via digital broadcasts and networks. The watermarking techniques, which are invisible to the user, allow the incoming content to be marked in a manner that makes it extremely difficult to discern precisely how the content was encoded, and thus extremely difficult to remove or alter the watermark without damaging the content. The DHSG has determined three primary cases of detection and control that such a technology should accomplish: playback, record and generational copy control. It is anticipated that the watermarking technology will allow the content provider to specify at least whether the content is xe2x80x9ccopy never,xe2x80x9d xe2x80x9ccopy once,xe2x80x9d and xe2x80x9ccopy freexe2x80x9d content. xe2x80x9cCopy neverxe2x80x9d is used to mark digital content to indicate that the content is not allowed to be copied, while xe2x80x9ccopy freexe2x80x9d indicates that the content may be copied freely and which can be marked with additional information. This is different than material that is never marked. Finally, xe2x80x9ccopy oncexe2x80x9d is used to indicate that the digital content is allowed to be copied only once. As a copy is being made, the original xe2x80x9ccopy oncexe2x80x9d content and the newly copied content are re-marked with xe2x80x9cno more copy.xe2x80x9d Of course, other types of copy management commands may limit the playing or reproduction of such digital content; for example, to a specific period of time, duration, or number of plays or viewings.
Thus, even today, the functionality of digital devices such as set-top boxes, digital televisions, digital audio players, and similar such digital devices extends beyond their historical role of conditional access (CA), i.e., merely de-scrambling content to a CA-clear format for real-time viewing and/or listening, and now include constraints and conditions on the recording and playback of such digital content.
Currently, copying of scrambled content for subsequent de-scrambling and viewing or listening may be permitted with the appropriate service/content provider authorization or key provided to the digital device
For example, service providers, such as terrestrial broadcast, cable, and direct broadcast satellite (DBS) companies, regulate program data delivered to viewers by encoding the program data using a variety of key delivery methods. A common key delivery method involves scrambling the content in program data with keys and control words. In this method, the content in the program data may be scrambled using control words that may change periodically over time during the broadcast. The control words are delivered into entitlement control messages in the program data and scrambled using a key injected in the entitlement management messages in the program data. In order to de-scramble the content, the key must be derived and used to de-scramble the control words. The control words are then applied to de-scramble the content.
Viewers may be allowed to record program data with content in a scrambled format and have the content de-scrambled and displayed at a later time. Program viewing units such as set top boxes may be designed to regulate the de-scrambling of the recorded content in the program data such that a record of the de-scrambling may be made and reported to the service providers. This allows the service providers to monitor the usage of program data by viewers and to bill the viewers. Program viewing units may be configured with key management functions that support special revenue features such as pay per-view, pay-per play, pay-per-time, and other features.
A drawback of the current key delivery methods is that the service providers change the keys used to scramble control words periodically. Thus, a program viewing unit may only de-scramble content in the program data if the current key provided by the service provider is the same as they key used to scramble control words in the recorded program data. De-scrambling of content may not be achieved by the program viewing unit after the key used to scramble the control words in the recorded program data expire.
In one embodiment, the present invention provides a method for deriving past keys by using a one way function to relate an ordered sequence of keys to each other. In another embodiment, the present invention provides a method for providing future access keys by creating a plurality of entitlement control messages, each entitlement control message including an access key for a given time period. In another embodiment, the present invention provides a method for providing future access keys by creating an entitlement control message having a plurality of access keys corresponding to a plurality of time periods.
In another embodiment, the present invention provides a method for tracking an entitlement history by creating an entitlement management message having an entitlement time history field that includes information about whether a user has entitlement to view content recorded during a past time period.
In another embodiment, the present invention provides a method for authorizing access to stored digital programs by determining whether a program is old, determining whether a user is authorized to view the old program. If the user is not authorized, the user is asked whether the user wants to access old programs, and if the user wants to access old programs, displaying a plurality of payment options to the user.